11
תגובות

בעיה בהתחברות ללוח הבקרה

פתח www111 ,
יצרתי התחברות ללוח הבקרה כאילו גישה
הכול עובד חוץ מי שנמשל שאני רוצה להוסיף עוד מנהל לאתר הוא לא קולט אותו
הוא קולט לי רק מנהל אחד
אינה הקוד
http://i.imgur.com/8Wbh1J0.png

11 תשובות

avatar ענה Splash ב 04 לאוגוסט 2015 #

השאילת שאתה מבצע לא נכונה,אתה שולף בשאילתא את כל המנהלים אבל מבצע רק fetch אחד כך שהוא מתייחס רק לראשון. לא כך מבצעים חיפוש במסד.מאחר וזו לא פעם ראשונה שבא אתה מבצע טעויות בסיסיות אני משער שבכלל לא למדת את הנושא לעומק לפני שהתחלת לכתוב את המערכת. אני מציע שתעבור שוב על כל הנושא של המסדי נתונים - where,order by,limit וכו' ואחר כך להבין את השילוב של השאילתות בתוך php מתי לבצע שליפה עם לולאה ומתי שליפה "רגילה" ואז לחזור לכתוב את המערכת.

למקרה הספציפי הזה מה שאתה מחפש זה - http://www.w3schools.com/sql/sql_where.asp

avatar ענה www111 ב 04 לאוגוסט 2015 #

Splash אני לומד עדיין את הנושא אני מתכנת מתחיל לאט לאט אני לומד מהטעויות שלי

avatar ענה Splash ב 04 לאוגוסט 2015 #

ברור,אף אחד לא לומד ביום אחד.סך הכל המלצתי לך לעבור שוב על כל הנושא מאחר והשגיאות בסיסיות.
אפשר ללמוד גם תוך כדי עשייה אם כי הרבה פעמים אתה תמצא את עצמך עושה משהו ואז אחרי מספר חודשים תבין שאתה עושה הכל שגוי וזה לא כזה פשוט לשנות הרגלים ישנים.
כמו למשל זה שאתה משתמש ב md5 אף על פי שכבר לא משתמשים בא לשמירת סיסמאות - https://phpguide.co.il/sha1+pass+and+salt+are+not+secure.htm

avatar ענה www111 ב 04 לאוגוסט 2015 #

Splash
תודה על על העזרה והמלצה אך עדיין לא הסתדרתי
אינה הקוד http://pastebin.com/yRwVKfB6
עם תוכל לעזור לי אני לומד תוך כדי עשייה עם אני לומד באופן תיאורתי אז מאוד קשה לי למה יש לי הפרעת קשב וריכוז
אז כמו שאמרתי רק תוך כדי עשייה אני מבין ובקשר לmd5 אני ישנה את זה תודה

avatar ענה Splash ב 04 לאוגוסט 2015 #

רשמתי לך בהודעה הראשונה - אתה צריך להשתמש ב where.
השאילתה -

SELECT * FROM admin

צריכה להפוך ל -
SELECT password FROM admin where username = *user_name*

כמובן שתצטרך לאבטח את הקלט על מנת להמנע מהזרקות לשאילתה.
אגב מדוע יש לך במסד password ו password1 ?

avatar ענה www111 ב 04 לאוגוסט 2015 #

יש לי עוד סיסמא
סיסמת גישה
אני ינסה עכשיו להשים תשאילתה תודה אחי על העזרה

avatar ענה www111 ב 04 לאוגוסט 2015 #

SELECT password FROM admin where username = *user_name*
רשמתי אחי את זה
ורשום לי mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in C:\wamp\www\big\admin\enter.php on line 14
זה ממש חשוב לי אני יושב על זה הרבה זמן ואני מנסה לפתור את זה
אינה הקוד http://pastebin.com/yRwVKfB6
תמונה של המסד http://i.imgur.com/ReJmBLS.png

avatar ענה Splash ב 04 לאוגוסט 2015 #

יש לך כנראה שגיאה בשאילתה ,תציג כאן את הקוד העדכני.
אגב אני מקווה שזה היה ברור אבל במקום *username* אמור היה להיות הקלט של הטופס.

avatar ענה www111 ב 04 לאוגוסט 2015 #

אינה הקוד העדכני אחי
http://pastebin.com/H2FpgFuu
התמונה שיש לי למסד למידת הצורך
http://i.imgur.com/ReJmBLS.png

avatar ענה Splash ב 04 לאוגוסט 2015 #

כמו שאמרתי,במקום *username* אמור להיות הקלט שקיבלת מהטופס.
בנוסף יש לך עוד שתי טעויות.
הראשונה - כאשר משווים מחרוזות במסד ,המחרוזת צריכה להיות מוקפת בגרש\גרשיים אחרת הוא לא יכול לדעת מתי נגמרת\מתחילה המחרוזת.
השנייה - אתה משווה את הסיסמאות בתור plain text ולא עם ה md5 ככה שהוא בחיים לא ימצא את המשתמש.

אחרי שתתקן את הכל החלק של הבדיקת סיסמאות מול php - מיותר,המסד כבר ביצע את הבדיקה ,רק תוודא שחזר ערך מסויים מהמסד.

אני עדיין דבק בדעה מההודעה הראשונה,אף אחד לא הולך לכתוב לך את הקוד ואם לא תלמד בעצמך זה פשוט לא יקרה.
לכולם קשה בהתחלה,תחפש את הדרך שהכי נוחה עבורך,אולי טקסט לא מתאים אז תחפש מדריכי וידאו שיסבירו צעד אחר צעד מה עושים.

avatar ענה www111 ב 04 לאוגוסט 2015 #

אוקי תודה Splash
אני ינסה עוד פעם